package com.zs.usc.common;

public enum RestCode {


    /* 操作成功 */
    SUCCESS(200, "操作成功"),

    /*用户未登录*/
    ERROR_ACCOUNT_NOT_LOGIN(10001, "用户未登录或会话超时，请登录"),
    /*账号不存在或密码错误*/
    ERROR_ACCOUNT_LOGIN_ERROR(10002, "账号不存在或密码错误"),
    /*密码错误*/
    ERROR_PASSWORD_ERROR(10002, "密码错误"),
    /*账号已存在*/
    ERROR_ACCOUNT_IS_EXISTENT(10003, "账号已存在"),
    /*账号不存在*/
    ERROR_ACCOUNT_NOT_EXIST(10004, "账号不存在"),
    /*账号已禁止  请与管理员联系*/
    ERROR_USER_ACCOUNT_LOCKED(10005, "账号已禁止，请与管理员联系"),
    /*账号无效*/
    ERROR_ACCOUNT_INVALID(10006, "账号无效"),
    /*锁定*/
    ERROR_ACCOUNT_LOCKED(10007, "账号已经被锁定"),

    /* 参数错误*/
    /*参数不为空*/
    ERROR_PARAMS_NOT_IS_BLANK(20001, "参数不为空"),
    /*参数无效*/
    ERROR_PARAMS_IS_INVALID(20002, "参数无效"),
    /*参数类型错误*/
    ERROR_PARAM_TYPE_ERROR(20003, "参数类型错误"),
    /*参数缺失*/
    ERROR_PARAM_IS_DEFICIENCY(20004, "参数缺失"),
    /*暂无权限*/
    ERROR_PERMISSION_NO_ACCESS(20006, "暂无权限"),
    ERROR_AUTH_ERROR(20007, "授权出错"),

    /* 业务错误 */
    /* 业务繁忙 请稍后在试 */
    ERROR_BUSINESS_UNKNOW_ERROR(30001, "业务繁忙，请稍后在试"),

    /*内部调用服务不可用*/
    ERROR_GW_UNKNOW_ERROR(30002, "服务发生内部错误"),

    /* ======系统错误：40001-49999===== */
    /* 提示语 "系统繁忙，请稍后重试"*/
    ERROR_SYSTEM_INNER_ERROR(40001, "系统繁忙，请稍后重试"),
    /*未知错误 请稍后在试*/
    ERROR_SYSTEM_UNKNOW_ERROR(40002, "未知错误 请稍后重试"),
    /*内部系统接口调用异常*/
    ERROR_INNER_INVOKE_ERROR(50001, "内部系统接口调用异常"),
    /*外部系统接口调用异常*/
    ERROR_OUTER_INVOKE_ERROR(50002, "外部系统接口调用异常"),
    /*该接口禁止访问*/
    ERROR_NO_ACCESS_FORBIDDEN(50003, "未授权的访问"),
    /*接口地址无效*/
    ERROR_NO_FOUND_ERROR(50004, "接口地址错误"),
    /* 数据错误 */
    ERROR_DATA_IS_WRONG(60001, "数据错误"),

    /*普通业务异常*/
    ERROR_BUSINESS_COMMON(400, "业务操作出现异常"),

    SERVER_ERROR(500, "服务器内部错误");
    private Integer code;
    private String message;

    /**
     * 构造函数
     *
     * @param code
     * @param message
     */
    RestCode(Integer code, String message) {
        this.code = code;
        this.message = message;
    }

    public Integer getCode() {
        return code;
    }

    public String getMessage() {
        return message;
    }

}
